JS 清除定时器timer的两种方法 |
您所在的位置:网站首页 › js 删除方法 › JS 清除定时器timer的两种方法 |
1.clearTimeout(timer);
只是将定时器关闭,这里的clearTimeout只是将定时器关闭,然后下面会重新开启定时器,但timer变量本身还存在,也就是当判断 if(timer) 时为真 代码示例,防抖函数的应用 function debounce(func, delay) { let timer; return function (...args) { clearTimeout(timer); timer = setTimeout(() => { func.apply(this, args); }); }; } 2.timer = nulltimer会被系统的垃圾回收机制回收, 无法再重新启动定时器,就是当判断 if(timer) 为假 所以当我们清除定时器时,可以先判断是否需要通过判断 if(timer) 来决定用哪个方法清除定时器 代码示例:节流函数的应用 function throttled2(func, delay) { let timer; return function (...args) { if (!timer) { timer = setTimeout(() => { func.apply(this, args); timer = null; }, delay); } }; } |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |